diff --git a/system/libraries/Session/Session.php b/system/libraries/Session/Session.php
index 1f24456..1195ed9 100755
--- a/system/libraries/Session/Session.php
+++ b/system/libraries/Session/Session.php
@@ -42,6 +42,7 @@
 	public $params = array();
 	protected $current = null;
 	protected $userdata = array();
+	protected $loaded = array();
 
 	const FLASHDATA_KEY = 'flash';
 	const FLASHDATA_NEW = ':new:';
@@ -112,6 +113,22 @@
 	}
 
 	/**
+	 * CI_Session destructor
+	 *
+	 * The destructor calls shutdown() on each loaded driver
+	 */
+	public function __destruct()
+	{
+		// Call shutdown for each loaded driver
+		foreach ($this->loaded as $driver)
+		{
+			$this->$driver->shutdown();
+		}
+
+		log_message('debug', 'CI_Session Class Shutdown');
+	}
+
+	/**
 	 * Loads session storage driver
 	 *
 	 * @param	string	Driver classname
@@ -122,6 +139,14 @@
 		// Save reference to most recently loaded driver as library default and sync userdata
 		$this->current = parent::load_driver($driver);
 		$this->userdata =& $this->current->get_userdata();
+
+		// Mark driver as loaded
+		if (!in_array($driver, $this->loaded))
+		{
+			$this->loaded[] = $driver;
+		}
+
+		// Return driver object
 		return $this->current;
 	}
 
@@ -582,6 +607,16 @@
 	}
 
 	/**
+	 * Shut down driver
+	 *
+	 * @return	void
+	 */
+	public function shutdown()
+	{
+		// Overload this method to implement shutdown
+	}
+
+	/**
 	 * Save the session data
 	 *
 	 * Data in the array has changed - perform any storage synchronization necessary
